package git.soulbgm.pojo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.SqlCondition;
import com.baomidou.mybatisplus.annotation.TableField;

import java.util.Date;

/**
 * 监控客户端时间同步状态表
 *
 * @author SoulBGM
 * @date 2020-11-18 10:03:05
 */
public class NodeNtpdateStatus {

    /**
     * ID
     */
    private Long id;

    /**
     * 节点/设备编号
     */
    @Excel(name = "主机编号", type = 10)
    private Integer nodeCode;

    /**
     * 部署IP
     */
    @Excel(name = "IP地址")
    private String deployIp;

    /**
     * 检测时间
     */
    @Excel(name = "更新时间", format = "yyyy-MM-dd HH:mm:ss")
    private Date detectionTime;

    /**
     * 校对NTP服务器地址 因有些检测使用的是域名所以需要记录校对的ntp服务器IP
     */
    @Excel(name = "校对NTP服务器地址")
    @TableField(condition = SqlCondition.LIKE)
    private String ntpServerIp;

    /**
     * 偏移秒数
     */
    @Excel(name = "偏移值(秒)")
    private Double offsetSeconds;

    /**
     * 区域编号 0代表不区分区域 其他为自定义
     */
    @Excel(name = "区域编号")
    private Integer regionCode;

    /**
     * 同步时间状态 0 Ntp服务器不可用 1 对准失败 2 成功对准
     */
    @Excel(name = "状态", replace = {"NTP服务器不可用_0", "对准失败_1", "成功对准_2"})
    private Integer status;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Integer getNodeCode() {
        return nodeCode;
    }

    public void setNodeCode(Integer nodeCode) {
        this.nodeCode = nodeCode;
    }

    public String getDeployIp() {
        return deployIp;
    }

    public void setDeployIp(String deployIp) {
        this.deployIp = deployIp;
    }

    public Date getDetectionTime() {
        return detectionTime;
    }

    public void setDetectionTime(Date detectionTime) {
        this.detectionTime = detectionTime;
    }

    public String getNtpServerIp() {
        return ntpServerIp;
    }

    public void setNtpServerIp(String ntpServerIp) {
        this.ntpServerIp = ntpServerIp;
    }

    public Double getOffsetSeconds() {
        return offsetSeconds;
    }

    public void setOffsetSeconds(Double offsetSeconds) {
        this.offsetSeconds = offsetSeconds;
    }

    public Integer getRegionCode() {
        return regionCode;
    }

    public void setRegionCode(Integer regionCode) {
        this.regionCode = regionCode;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }
}
